perm filename DANGER.MF[MF,DEK] blob sn#776966 filedate 1984-11-23 generic text, type T, neo UTF8
% dangerous bend symbol (draft)

def font_setup=
define_pixels(u,tiny,axis,hheight,border);
define_blacker_pixels(hair,thin,thick,rulethickness);
pickup if tiny<.5: nullpen else: pencircle scaled tiny fi;
tinypen:=savepen;
currenttransform:=identity slanted slant;
enddef;

% typical cmr10 parameters
u#:=20/36pt#;
tiny#:=0;
axis#:=90/36pt#;
hheight#:=250/36pt#;
border#:=20/36pt#;
hair#:=8/36pt#;
thin#:=9/36pt#;
thick#:=25/36pt#;
fixwidth:=0;
slant:=0;
rulethickness#:=.4pt#;

baselinedistance#:=11pt#;
heavyline#:=50/36pt#;
font_setup;
define_whole_pixels(baselinedistance);
define_blacker_pixels(heavyline);

beginchar(127,25u#,hheight#+border#,0); "Dangerous bend sign";
pickup pencircle scaled rulethickness;
top y1=25/27h; lft x4=0;
x1+x1=x1a+x1b=x4b+x2a=x4+x2=x4a+x2b=x3b+x3a=x3+x3=w;
x4a=x4b=x4+u; x3b=x1a=x1-2u;
y4+y4=y4a+y4b=y3b+y1a=y3+y1=y3a+y1b=y2b+y2a=y2+y2=0;
y1a=y1b=y1-2/27h; y4b=y2a=y4+4/27h;
draw z1a..z1..z1b....z2a..z2..z2b....
	z3a..z3..z3b....z4a..z4..z4b....cycle;	% signboard
x10=x11=x12=x13=good.x(.5w-u); x14=x15=x16=x17=w-x10;
y10=y14=h; bot y13=-baselinedistance;
z11=(z10..z13) intersectionpoint (z1a{z1a-z4b}..z1{right});
y15=y11; y16=y12=-y11; y17=y20=y21=y13;
draw z11--z10--z14--z15; draw z12--z13; draw z16--z17;	% signpost
x20=w-x21; x21-x20=16u; draw z20--z21;	% ground level
x38=w-x31; x38-x31=8u; x32=x34=x38; x31=x35=x37;
y31=-y38=12/27h; y32=-y37=9/27h; y34=-y35=3/27h;
pickup pencircle scaled heavyline;
draw z32{z32-z31}..z34....z35..z37{z38-z37};	% the dangerous bend
pickup razor xscaled heavyline rotated (angle(z32-z31)+90);
draw z31--z32; draw z37--z38;		% upper and lower bars
labels(1,1a,1b,2,2a,2b,3,3a,3b,4,4a,4b,10,11,12,13,14,15,16,17,20,21,
	31,32,33,34,35,36,37,38);
endchar;
edges dbend; dbend=currentpicture;
beginchar(126,25u#,hheight#+border#,0); "Negative ditto";
fill (0,-11pt)--(w,-11pt)--(w,h)--(0,h)--cycle;
\pausing:=1;
currentpicture:=currentpicture-dbend;
endchar.